iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 3
2
影片教學

想盡辦法當好一個Junior Backend Developer系列 第 3

Golang - 如何當好一個junior backend developer - RDBMS V.S NoSQL

  • 分享至 

  • xImage
  •  

Yes

RDBMS V.S NoSQL

  • 大多數的系統採用的一定是關聯式資料庫,而不是所謂的NoSQL,應該是NoSQL的存在是為了一些特定應用場景,或是輔助關聯式資料庫之用的。
  • 我不認為NoSQL在開發速度上有比RDBMS快,而且如果系統裡面的資料有許多Join的情況,使用NoSQL根本就是自討苦吃,更何況自己開發的專案只是一個小系統,又沒有什麼超高流量,初期的小系統就應該使用RDBMS。
  • MongoDB 4.0版本以前只支援單文檔事務
  • Two phases commit
  • 如果用RDBMS覺得開發慢,其實我覺得百分之八九十是因為當前系統的商業邏輯沒想好及基本功不好,才會影響開發速度。
  • 身為Junior Backend Developer 理解一種RDBMS是必要的
  • 建議先熟悉RDBMS之後再去熟悉NoSQL 如MongoDB

使用RDBMS優點

  1. 大部分主流的RDBMS開發歷史悠久,許多錯誤也經過不斷的修正,值得信賴
  2. 對於資料容忍度低的系統,使用RDBMS是不二的選擇,因為有其ACID特性。
  3. SQL語法很強大,絕大多數的商業計算可以用SQL語法就算出,不需要拿到application server layer來計算

常見的RDBMS

  • PostgreSQL
  • MySQL
  • SQL Server
  • Oracle

Backend 程式語言與框架選擇

語言

  • Java
  • C#
  • Golang
  • Python
  • Node.JS

框架選擇

  • GitHub Star數
  • 社群維護是否積極
  • 文檔是否詳細
  • 依賴第三方套件多不多
  • Benchmark

歡迎參觀團隊其他成員的文章~


上一篇
Golang - 想盡辦法當好一個Junior Backend Developer - 自己來當需求者
下一篇
Golang - 如何當好一個junior backend developer - PostgreSQL安裝與權限探討
系列文
想盡辦法當好一個Junior Backend Developer13
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
pjchender
iT邦新手 3 級 ‧ 2020-09-16 23:13:00

謝謝分享!你們團隊的內容都很精彩!

我要留言

立即登入留言